t = int(input())
for i in range(t):
n,k = map(str,input().split())
n = int(n)
s = input()
ns = [0]*n
count = 0
for j in range(len(s)):
if s[j]!=k:
ns[j] = 1
count+=1
if count == 0:
print(0)
else:
pos = False
for k in range(n//2,n):
if(ns[k] == 0):
pos = True
print(1)
print(k+1)
break
if(not pos):
print(2)
print(n,n-1)
#include<bits/stdc++.h>
/*
author:- laksheya_0809
*/
using namespace std;
#define int long long
#define ii pair<int, int>
#define vi vector<int>
#define pb push_back
#define ppb pop_back
#define vvi vector<vi>
#define vii vector<ii>
#define ln << '\n'
#define sz(x) (int)((x).size())
#define _for(s, n, upd) for(int i = s; i < n; i+=upd)
#define rep(i, s, n) for(int i = s; i < (n); i++)
#define all(x) (x).begin(), (x).end()
#define allr(x) (x).rbegin(), (x).rend()
#define fill(x, y) memset(x, y, sizeof x)
#define mp map
#define ump unordered_map
const int MOD = 1000000007;
bool isprime(int x) {
if(x==1) return false;
for(int i = 2; i <= sqrt(x); i++)
if(x%i == 0)
return false;
return true;
}
void sol() {
int n;
char c;
cin >> n >> c;
string s; cin >> s;
bool flag = 1;
rep(i, 0, n)
flag &= s[i] == c;
if(flag) {
cout << 0 ln;
return;
}
for(int i = 2; i <= n; i++) {
flag = 1;
for(int j = i; j <= n; j+=i)
flag &= s[j-1] == c;
if(flag) {
cout << 1 ln << i ln;
return;
}
}
cout << 2 ln << n << " " << n-1 ln;
}
signed main() {
ios::sync_with_stdio(0);
cin.tie(0);
int t = 1;
cin >> t;
while(t--) sol();
return 0;
}
1615B - And It's Non-Zero | 1619E - MEX and Increments |
34B - Sale | 1436A - Reorder |
1363C - Game On Leaves | 1373C - Pluses and Minuses |
1173B - Nauuo and Chess | 318B - Strings of Power |
1625A - Ancient Civilization | 864A - Fair Game |
1663B - Mike's Sequence | 448A - Rewards |
1622A - Construct a Rectangle | 1620A - Equal or Not Equal |
1517A - Sum of 2050 | 620A - Professor GukiZ's Robot |
1342A - Road To Zero | 1520A - Do Not Be Distracted |
352A - Jeff and Digits | 1327A - Sum of Odd Integers |
1276A - As Simple as One and Two | 812C - Sagheer and Nubian Market |
272A - Dima and Friends | 1352C - K-th Not Divisible by n |
545C - Woodcutters | 1528B - Kavi on Pairing Duty |
339B - Xenia and Ringroad | 189A - Cut Ribbon |
1182A - Filling Shapes | 82A - Double Cola |